[INFO] fetching crate RustMusic 0.1.0...
[INFO] building RustMusic-0.1.0 against master#881c1ac408d93bb7adaa3a51dabab9266e82eee8 for issue-85264
[INFO] extracting crate RustMusic 0.1.0 into /workspace/builds/worker-4/source
[INFO] validating manifest of crates.io crate RustMusic 0.1.0 on toolchain 881c1ac408d93bb7adaa3a51dabab9266e82eee8
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate RustMusic 0.1.0
[INFO] finished tweaking crates.io crate RustMusic 0.1.0
[INFO] tweaked toml for crates.io crate RustMusic 0.1.0 written to /workspace/builds/worker-4/source/Cargo.toml
[INFO] crate crates.io crate RustMusic 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded urlqstring v0.3.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5f88e45fbcb7ced4e0cb7da81eb333388be56361dd1ceb4e67eb41395f9a5c74
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "5f88e45fbcb7ced4e0cb7da81eb333388be56361dd1ceb4e67eb41395f9a5c74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5f88e45fbcb7ced4e0cb7da81eb333388be56361dd1ceb4e67eb41395f9a5c74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f88e45fbcb7ced4e0cb7da81eb333388be56361dd1ceb4e67eb41395f9a5c74", kill_on_drop: false }`
[INFO] [stdout] 5f88e45fbcb7ced4e0cb7da81eb333388be56361dd1ceb4e67eb41395f9a5c74
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ebff4be12a49468055602aa5960fe4ccdb3104290115dce1c133f05663dc92f0
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "ebff4be12a49468055602aa5960fe4ccdb3104290115dce1c133f05663dc92f0", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.66
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling proc-macro2 v1.0.6
[INFO] [stderr]    Compiling syn v1.0.11
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling autocfg v0.1.7
[INFO] [stderr]    Compiling memchr v2.2.1
[INFO] [stderr]    Compiling fnv v1.0.6
[INFO] [stderr]    Compiling cc v1.0.48
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling smallvec v1.0.0
[INFO] [stderr]    Compiling futures v0.1.29
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling scopeguard v1.0.0
[INFO] [stderr]    Compiling matches v0.1.8
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling arc-swap v0.4.4
[INFO] [stderr]    Compiling futures-core v0.3.1
[INFO] [stderr]    Compiling itoa v0.4.4
[INFO] [stderr]    Compiling futures-sink v0.3.1
[INFO] [stderr]    Compiling getrandom v0.1.13
[INFO] [stderr]    Compiling bytes v0.5.3
[INFO] [stderr]    Compiling proc-macro-nested v0.1.3
[INFO] [stderr]    Compiling regex-syntax v0.6.12
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling ppv-lite86 v0.2.6
[INFO] [stderr]    Compiling pin-utils v0.1.0-alpha.4
[INFO] [stderr]    Compiling pin-project-lite v0.1.1
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling futures-task v0.3.1
[INFO] [stderr]    Compiling futures-io v0.3.1
[INFO] [stderr]    Compiling percent-encoding v2.1.0
[INFO] [stderr]    Compiling copyless v0.1.4
[INFO] [stderr]    Compiling serde v1.0.103
[INFO] [stderr]    Compiling percent-encoding v1.0.1
[INFO] [stderr]    Compiling linked-hash-map v0.5.2
[INFO] [stderr]    Compiling quick-error v1.2.2
[INFO] [stderr]    Compiling httparse v1.3.4
[INFO] [stderr]    Compiling ryu v1.0.2
[INFO] [stderr]    Compiling either v1.5.3
[INFO] [stderr]    Compiling encoding_rs v0.8.20
[INFO] [stderr]    Compiling version_check v0.9.1
[INFO] [stderr]    Compiling foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling mime v0.3.14
[INFO] [stderr]    Compiling openssl v0.10.26
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]    Compiling crc32fast v1.2.0
[INFO] [stderr]    Compiling dtoa v0.4.4
[INFO] [stderr]    Compiling native-tls v0.2.3
[INFO] [stderr]    Compiling openssl-probe v0.1.2
[INFO] [stderr]    Compiling sha1 v0.6.0
[INFO] [stderr]    Compiling base64 v0.11.0
[INFO] [stderr]    Compiling futures-core-preview v0.3.0-alpha.19
[INFO] [stderr]    Compiling hex v0.4.0
[INFO] [stderr]    Compiling urlqstring v0.3.1
[INFO] [stderr]    Compiling unicode-bidi v0.3.4
[INFO] [stderr]    Compiling lock_api v0.3.2
[INFO] [stderr]    Compiling crossbeam-utils v0.6.6
[INFO] [stderr]    Compiling thread_local v0.3.6
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling futures-channel v0.3.1
[INFO] [stderr]    Compiling unicode-normalization v0.1.11
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling indexmap v1.3.0
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.10
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling hashbrown v0.6.3
[INFO] [stderr]    Compiling http v0.2.0
[INFO] [stderr]    Compiling lru-cache v0.1.2
[INFO] [stderr]    Compiling c2-chacha v0.2.3
[INFO] [stderr]    Compiling foreign-types v0.3.2
[INFO] [stderr]    Compiling futures-channel-preview v0.3.0-alpha.19
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling unicase v2.6.0
[INFO] [stderr]    Compiling error-chain v0.12.1
[INFO] [stderr]    Compiling tokio-executor v0.1.9
[INFO] [stderr]    Compiling tokio-sync v0.1.7
[INFO] [stderr]    Compiling actix-service v0.4.2
[INFO] [stderr]    Compiling want v0.3.0
[INFO] [stderr]    Compiling smallvec v0.6.13
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling backtrace-sys v0.1.32
[INFO] [stderr]    Compiling openssl-sys v0.9.53
[INFO] [stderr]    Compiling miniz-sys v0.1.12
[INFO] [stderr]    Compiling brotli-sys v0.3.2
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling num_cpus v1.11.1
[INFO] [stderr]    Compiling net2 v0.2.33
[INFO] [stderr]    Compiling signal-hook-registry v1.2.0
[INFO] [stderr]    Compiling time v0.1.42
[INFO] [stderr]    Compiling socket2 v0.3.11
[INFO] [stderr]    Compiling hostname v0.1.5
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling parking_lot_core v0.7.0
[INFO] [stderr]    Compiling listenfd v0.3.3
[INFO] [stderr]    Compiling tokio-timer v0.2.12
[INFO] [stderr]    Compiling tokio-current-thread v0.1.6
[INFO] [stderr]    Compiling base64 v0.10.1
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling idna v0.2.0
[INFO] [stderr]    Compiling idna v0.1.5
[INFO] [stderr]    Compiling aho-corasick v0.7.6
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling threadpool v1.7.1
[INFO] [stderr]    Compiling resolv-conf v0.6.2
[INFO] [stderr]    Compiling signal-hook v0.1.12
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling mio v0.6.21
[INFO] [stderr]    Compiling parking_lot v0.10.0
[INFO] [stderr]    Compiling http-body v0.3.1
[INFO] [stderr]    Compiling mime_guess v2.0.1
[INFO] [stderr]    Compiling url v1.7.2
[INFO] [stderr]    Compiling tokio-io v0.1.12
[INFO] [stderr]    Compiling http v0.1.21
[INFO] [stderr]    Compiling string v0.2.1
[INFO] [stderr]    Compiling url v2.1.0
[INFO] [stderr]    Compiling rand_chacha v0.2.1
[INFO] [stderr]    Compiling regex v1.3.1
[INFO] [stderr]    Compiling flate2 v1.0.13
[INFO] [stderr]    Compiling mio-uds v0.6.7
[INFO] [stderr]    Compiling backtrace v0.3.40
[INFO] [stderr]    Compiling tokio-codec v0.1.1
[INFO] [stderr]    Compiling rand v0.7.2
[INFO] [stderr]    Compiling chrono v0.4.10
[INFO] [stderr]    Compiling cookie v0.12.0
[INFO] [stderr]    Compiling tokio-reactor v0.1.11
[INFO] [stderr]    Compiling tokio v0.2.6
[INFO] [stderr]    Compiling actix-codec v0.1.2
[INFO] [stderr]    Compiling tokio-tcp v0.1.3
[INFO] [stderr]    Compiling tokio-udp v0.1.5
[INFO] [stderr]    Compiling tokio-signal v0.2.7
[INFO] [stderr]    Compiling actix-utils v0.4.7
[INFO] [stderr]    Compiling publicsuffix v1.5.4
[INFO] [stderr]    Compiling actix-server-config v0.1.2
[INFO] [stderr]    Compiling h2 v0.1.26
[INFO] [stderr]    Compiling enum-as-inner v0.2.1
[INFO] [stderr]    Compiling derive_more v0.15.0
[INFO] [stderr]    Compiling brotli2 v0.3.2
[INFO] [stderr]    Compiling tokio-util v0.2.0
[INFO] [stderr]    Compiling tokio-tls v0.3.0
[INFO] [stderr]    Compiling actix-codec v0.2.0
[INFO] [stderr]    Compiling synstructure v0.12.3
[INFO] [stderr]    Compiling actix-threadpool v0.1.2
[INFO] [stderr]    Compiling actix-rt v0.2.6
[INFO] [stderr]    Compiling actix-server v0.6.1
[INFO] [stderr]    Compiling proc-macro-hack v0.5.11
[INFO] [stderr]    Compiling failure_derive v0.1.6
[INFO] [stderr]    Compiling serde_derive v1.0.103
[INFO] [stderr]    Compiling pin-project-internal v0.4.6
[INFO] [stderr]    Compiling derive_more v0.99.2
[INFO] [stderr]    Compiling async-trait v0.1.22
[INFO] [stderr]    Compiling actix-macros v0.1.1
[INFO] [stderr]    Compiling enum-as-inner v0.3.0
[INFO] [stderr]    Compiling actix-web-codegen v0.1.3
[INFO] [stderr]    Compiling actix-testing v0.1.0
[INFO] [stderr]    Compiling futures-macro v0.3.1
[INFO] [stderr]    Compiling const-random-macro v0.1.6
[INFO] [stderr]    Compiling failure v0.1.6
[INFO] [stderr]    Compiling trust-dns-proto v0.7.4
[INFO] [stderr]    Compiling const-random v0.1.6
[INFO] [stderr]    Compiling ahash v0.2.18
[INFO] [stderr]    Compiling pin-project v0.4.6
[INFO] [stderr]    Compiling futures-util v0.3.1
[INFO] [stderr]    Compiling trust-dns-resolver v0.11.1
[INFO] [stderr]    Compiling actix-threadpool v0.3.1
[INFO] [stderr]    Compiling actix-connect v0.2.5
[INFO] [stderr]    Compiling futures-executor v0.3.1
[INFO] [stderr]    Compiling h2 v0.2.1
[INFO] [stderr]    Compiling actix-service v1.0.1
[INFO] [stderr]    Compiling futures v0.3.1
[INFO] [stderr]    Compiling trust-dns-proto v0.18.0-alpha.2
[INFO] [stderr]    Compiling actix-rt v1.0.0
[INFO] [stderr]    Compiling actix-utils v1.0.4
[INFO] [stderr]    Compiling trust-dns-resolver v0.18.0-alpha.2
[INFO] [stderr]    Compiling hyper v0.13.1
[INFO] [stderr]    Compiling actix-connect v1.0.1
[INFO] [stderr]    Compiling hyper-tls v0.4.0
[INFO] [stderr]    Compiling serde_json v1.0.44
[INFO] [stderr]    Compiling serde_urlencoded v0.6.1
[INFO] [stderr]    Compiling actix-router v0.1.5
[INFO] [stderr]    Compiling actix-http v0.2.11
[INFO] [stderr]    Compiling cookie_store v0.10.0
[INFO] [stderr]    Compiling actix-http v1.0.1
[INFO] [stderr]    Compiling reqwest v0.10.0
[INFO] [stderr]    Compiling awc v0.2.8
[INFO] [stderr]    Compiling actix-web v1.0.9
[INFO] [stderr]    Compiling RustMusic v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `FromRequest`, `error`
[INFO] [stdout]  --> src/app.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Responder, App, FromRequest,
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout] 5 |     web, error, middleware, get,
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Uri`
[INFO] [stdout]  --> src/app.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use actix_web::http::{ Uri, };
[INFO] [stdout]   |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CONTENT_TYPE`, `HOST`, `HeaderMap`, `REFERER`, `USER_AGENT`
[INFO] [stdout]   --> src/app.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout] 9  |     HOST, CONTENT_TYPE, USER_AGENT, REFERER,
[INFO] [stdout]    |     ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 10 |     HeaderMap
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Deserialize`
[INFO] [stdout]   --> src/app.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use serde::Deserialize;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `service`, `to`
[INFO] [stdout]   --> src/app.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 | use actix_web::web::{service, to};
[INFO] [stdout]    |                      ^^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_http::error::PayloadError::Http2Payload`
[INFO] [stdout]   --> src/app.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use actix_http::error::PayloadError::Http2Payload;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_http::http::HeaderValue`
[INFO] [stdout]   --> src/app.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use actix_http::http::HeaderValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `lazy_static::lazy_static`
[INFO] [stdout]   --> src/app.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use lazy_static::lazy_static;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_http::cookie::Cookie`
[INFO] [stdout]   --> src/app.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use actix_http::cookie::Cookie;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::dev::RequestHead`
[INFO] [stdout]   --> src/app.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use actix_web::dev::RequestHead;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]   --> src/app.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::ops::Deref;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::error::UrlencodedError::ContentType`
[INFO] [stdout]   --> src/app.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | use actix_web::error::UrlencodedError::ContentType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64::CharacterSet::Crypt`
[INFO] [stdout]   --> src/app.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | use base64::CharacterSet::Crypt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `md5` should have an upper camel case name
[INFO] [stdout]   --> src/crypto.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     md5
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case: `Md5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `cbc` should have an upper camel case name
[INFO] [stdout]   --> src/crypto.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     cbc,
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Cbc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ecb` should have an upper camel case name
[INFO] [stdout]   --> src/crypto.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     ecb,
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case: `Ecb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `App`, `FromRequest`, `HttpRequest`, `HttpResponse`, `HttpServer`, `Responder`, `cookie`, `error`, `web`
[INFO] [stdout]  --> src/api.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     App, HttpRequest, FromRequest, HttpResponse,
[INFO] [stdout]   |     ^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 3 |     HttpServer, Responder, web, error,
[INFO] [stdout]   |     ^^^^^^^^^^  ^^^^^^^^^  ^^^  ^^^^^
[INFO] [stdout] 4 |     cookie,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Uri`
[INFO] [stdout]  --> src/api.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use actix_web::http::{ Uri, };
[INFO] [stdout]   |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `COOKIE`, `HOST`, `ToStrError`
[INFO] [stdout]  --> src/api.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use reqwest::header::{HOST, CONTENT_TYPE, USER_AGENT, REFERER, HeaderMap, ToStrError, CONTENT_ENCODING, COOKIE};
[INFO] [stdout]   |                       ^^^^                                                ^^^^^^^^^^                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Client`
[INFO] [stdout]   --> src/api.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Client,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Deserialize`
[INFO] [stdout]   --> src/api.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use serde::Deserialize;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::error::UrlencodedError::ContentType`
[INFO] [stdout]   --> src/api.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use actix_web::error::UrlencodedError::ContentType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crypto::HashType`
[INFO] [stdout]   --> src/api.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::crypto::HashType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64::CharacterSet::Crypt`
[INFO] [stdout]   --> src/api.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use base64::CharacterSet::Crypt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::rngs::OsRng`
[INFO] [stdout]   --> src/api.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use rand::rngs::OsRng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/crypto.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             _ => { "error".to_string() }
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/app.rs:76:23
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn index_album_newest(msg: HttpRequest) -> impl Responder {
[INFO] [stdout]    |                       ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `url`
[INFO] [stdout]    --> src/app.rs:370:9
[INFO] [stdout]     |
[INFO] [stdout] 370 |     let url = "http://music.163.com/eapi/batch";
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_url`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> src/app.rs:369:16
[INFO] [stdout]     |
[INFO] [stdout] 369 | fn index_batch(req: HttpRequest) -> impl Responder {
[INFO] [stdout]     |                ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:1472:23
[INFO] [stdout]      |
[INFO] [stdout] 1472 | fn index_login_status(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                       ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:1488:17
[INFO] [stdout]      |
[INFO] [stdout] 1488 | fn index_logout(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                 ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:1775:22
[INFO] [stdout]      |
[INFO] [stdout] 1775 | fn index_personal_fm(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                      ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:1808:33
[INFO] [stdout]      |
[INFO] [stdout] 1808 | fn index_personalized_djprogram(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:1824:26
[INFO] [stdout]      |
[INFO] [stdout] 1824 | fn index_personalized_mv(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                          ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:1840:31
[INFO] [stdout]      |
[INFO] [stdout] 1840 | fn index_personalized_newsong(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                               ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:1859:38
[INFO] [stdout]      |
[INFO] [stdout] 1859 | fn index_personalized_privatecontent(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                                      ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:2183:29
[INFO] [stdout]      |
[INFO] [stdout] 2183 | fn index_recommend_resource(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                             ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:2373:25
[INFO] [stdout]      |
[INFO] [stdout] 2373 | fn index_search_default(req: HttpRequest) -> impl Responder{
[INFO] [stdout]      |                         ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:2406:28
[INFO] [stdout]      |
[INFO] [stdout] 2406 | fn index_search_hot_detail(req: HttpRequest) -> impl Responder{
[INFO] [stdout]      |                            ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:2519:18
[INFO] [stdout]      |
[INFO] [stdout] 2519 | fn index_setting(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                  ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]     --> src/app.rs:2647:9
[INFO] [stdout]      |
[INFO] [stdout] 2647 |     let query = QueryParams::from(req.query_string());
[INFO] [stdout]      |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `br`
[INFO] [stdout]     --> src/app.rs:2681:9
[INFO] [stdout]      |
[INFO] [stdout] 2681 |     let br = query.value("br").unwrap_or("&br=999000");
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_br`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:3142:24
[INFO] [stdout]      |
[INFO] [stdout] 3142 | fn index_user_subcount(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                        ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]     --> src/app.rs:3224:27
[INFO] [stdout]      |
[INFO] [stdout] 3224 | fn index_video_group_list(req: HttpRequest) -> impl Responder {
[INFO] [stdout]      |                           ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `encrypted_len`
[INFO] [stdout]    --> src/crypto.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let encrypted_len = rsa.public_encrypt(&data, &mut buf, Padding::NONE).unwrap();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_encrypted_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `RustMusic` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout]   = help: convert the identifier to snake case: `rust_music`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `categoryCode` should have a snake case name
[INFO] [stdout]    --> src/app.rs:203:9
[INFO] [stdout]     |
[INFO] [stdout] 203 |     let categoryCode = query.value("cat").unwrap_or("1001");
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `category_code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `artistId` should have a snake case name
[INFO] [stdout]    --> src/app.rs:233:9
[INFO] [stdout]     |
[INFO] [stdout] 233 |     let artistId = query.value("id").unwrap_or("6452");
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `artist_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `artistId` should have a snake case name
[INFO] [stdout]    --> src/app.rs:259:9
[INFO] [stdout]     |
[INFO] [stdout] 259 |     let artistId = query.value("id").unwrap_or("6452");
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `artist_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `threadId` should have a snake case name
[INFO] [stdout]    --> src/app.rs:509:9
[INFO] [stdout]     |
[INFO] [stdout] 509 |     let threadId:String = if rtype == "A_EV_2_" {
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `thread_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `beforeTime` should have a snake case name
[INFO] [stdout]    --> src/app.rs:624:9
[INFO] [stdout]     |
[INFO] [stdout] 624 |     let beforeTime = query.value("beforeTime").unwrap_or("0");
[INFO] [stdout]     |         ^^^^^^^^^^ help: convert the identifier to snake case: `before_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `threadId` should have a snake case name
[INFO] [stdout]    --> src/app.rs:667:9
[INFO] [stdout]     |
[INFO] [stdout] 667 |     let threadId: String = if _type == "A_EV_2" {
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `thread_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `commentId` should have a snake case name
[INFO] [stdout]    --> src/app.rs:672:9
[INFO] [stdout]     |
[INFO] [stdout] 672 |     let commentId = query.value("cid").unwrap();
[INFO] [stdout]     |         ^^^^^^^^^ help: convert the identifier to snake case: `comment_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `index_digitalAlbum_purchased` should have a snake case name
[INFO] [stdout]    --> src/app.rs:791:4
[INFO] [stdout]     |
[INFO] [stdout] 791 | fn index_digitalAlbum_purchased(req: HttpRequest) -> impl Responder {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `index_digital_album_purchased`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `radioId` should have a snake case name
[INFO] [stdout]    --> src/app.rs:987:9
[INFO] [stdout]     |
[INFO] [stdout] 987 |     let radioId = query.value("rid").unwrap();
[INFO] [stdout]     |         ^^^^^^^ help: convert the identifier to snake case: `radio_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cateId` should have a snake case name
[INFO] [stdout]     --> src/app.rs:1048:9
[INFO] [stdout]      |
[INFO] [stdout] 1048 |     let cateId = query.value("type").unwrap_or("10001");
[INFO] [stdout]      |         ^^^^^^ help: convert the identifier to snake case: `cate_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rememberLogin` should have a snake case name
[INFO] [stdout]     --> src/app.rs:1402:9
[INFO] [stdout]      |
[INFO] [stdout] 1402 |     let rememberLogin = query.value("rememberLogin").unwrap_or("true");
[INFO] [stdout]      |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `remember_login`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rememberLogin` should have a snake case name
[INFO] [stdout]     --> src/app.rs:1434:9
[INFO] [stdout]      |
[INFO] [stdout] 1434 |     let rememberLogin = query.value("rememberLogin").unwrap_or("true");
[INFO] [stdout]      |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `remember_login`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `beforeTime` should have a snake case name
[INFO] [stdout]     --> src/app.rs:1525:9
[INFO] [stdout]      |
[INFO] [stdout] 1525 |     let beforeTime = query.value("before").unwrap_or("-1");
[INFO] [stdout]      |         ^^^^^^^^^^ help: convert the identifier to snake case: `before_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `songId` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2120:9
[INFO] [stdout]      |
[INFO] [stdout] 2120 |     let songId = query.value("id").unwrap();
[INFO] [stdout]      |         ^^^^^^ help: convert the identifier to snake case: `song_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `playlistId` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2122:9
[INFO] [stdout]      |
[INFO] [stdout] 2122 |     let playlistId = query.value("pid").unwrap();
[INFO] [stdout]      |         ^^^^^^^^^^ help: convert the identifier to snake case: `playlist_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `sId` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2123:36
[INFO] [stdout]      |
[INFO] [stdout] 2123 |     let startMusicId = if let Some(sId) = query.value("sid") {
[INFO] [stdout]      |                                    ^^^ help: convert the identifier to snake case: `s_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startMusicId` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2123:9
[INFO] [stdout]      |
[INFO] [stdout] 2123 |     let startMusicId = if let Some(sId) = query.value("sid") {
[INFO] [stdout]      |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `start_music_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `threadId` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2288:9
[INFO] [stdout]      |
[INFO] [stdout] 2288 |     let threadId = if rtype == "A_EV_2_" {
[INFO] [stdout]      |         ^^^^^^^^ help: convert the identifier to snake case: `thread_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `sourceId` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2317:9
[INFO] [stdout]      |
[INFO] [stdout] 2317 |     let sourceId = query.value("sourceid").unwrap();
[INFO] [stdout]      |         ^^^^^^^^ help: convert the identifier to snake case: `source_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `userIds` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2475:9
[INFO] [stdout]      |
[INFO] [stdout] 2475 |     let userIds = query.value("user_ids").unwrap();
[INFO] [stdout]      |         ^^^^^^^ help: convert the identifier to snake case: `user_ids`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `userIds` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2500:9
[INFO] [stdout]      |
[INFO] [stdout] 2500 |     let userIds = query.value("user_ids").unwrap();
[INFO] [stdout]      |         ^^^^^^^ help: convert the identifier to snake case: `user_ids`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `songIds` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2940:9
[INFO] [stdout]      |
[INFO] [stdout] 2940 |     let songIds = query.value("songIds").unwrap();
[INFO] [stdout]      |         ^^^^^^^ help: convert the identifier to snake case: `song_ids`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `queryValue` should have a snake case name
[INFO] [stdout]     --> src/app.rs:2960:9
[INFO] [stdout]      |
[INFO] [stdout] 2960 |     let queryValue = query.value("id").unwrap();
[INFO] [stdout]      |         ^^^^^^^^^^ help: convert the identifier to snake case: `query_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `banner_type` should have an upper case name
[INFO] [stdout]   --> src/api.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const banner_type: [&str; 4] = [
[INFO] [stdout]    |           ^^^^^^^^^^^ help: convert the identifier to upper case: `BANNER_TYPE`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `resource_type` should have an upper case name
[INFO] [stdout]   --> src/api.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const resource_type: [&str; 7] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^^ help: convert the identifier to upper case: `RESOURCE_TYPE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `operator` should have an upper case name
[INFO] [stdout]   --> src/api.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub const operator: [&str; 3] = [
[INFO] [stdout]    |           ^^^^^^^^ help: convert the identifier to upper case: `OPERATOR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `linux_user_agent` should have an upper case name
[INFO] [stdout]   --> src/api.rs:39:7
[INFO] [stdout]    |
[INFO] [stdout] 39 | const linux_user_agent: &str = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `LINUX_USER_AGENT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `user_agent_list` should have an upper case name
[INFO] [stdout]   --> src/api.rs:41:7
[INFO] [stdout]    |
[INFO] [stdout] 41 | const user_agent_list: [&str; 14] = [
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `USER_AGENT_LIST`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `topList` should have an upper case name
[INFO] [stdout]   --> src/api.rs:58:11
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub const topList: [&str; 37] = [
[INFO] [stdout]    |           ^^^^^^^ help: convert the identifier to upper case: `TOP_LIST`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 75 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4m 48s
[INFO] running `Command { std: "docker" "inspect" "ebff4be12a49468055602aa5960fe4ccdb3104290115dce1c133f05663dc92f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ebff4be12a49468055602aa5960fe4ccdb3104290115dce1c133f05663dc92f0", kill_on_drop: false }`
[INFO] [stdout] ebff4be12a49468055602aa5960fe4ccdb3104290115dce1c133f05663dc92f0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2c12f030da22ac719b7424468cd143094d5cfd347d97d546e044d0015e680813
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "2c12f030da22ac719b7424468cd143094d5cfd347d97d546e044d0015e680813", kill_on_drop: false }`
[INFO] [stderr]    Compiling RustMusic v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `FromRequest`, `error`
[INFO] [stdout]  --> src/app.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Responder, App, FromRequest,
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout] 5 |     web, error, middleware, get,
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Uri`
[INFO] [stdout]  --> src/app.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use actix_web::http::{ Uri, };
[INFO] [stdout]   |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CONTENT_TYPE`, `HOST`, `HeaderMap`, `REFERER`, `USER_AGENT`
[INFO] [stdout]   --> src/app.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout] 9  |     HOST, CONTENT_TYPE, USER_AGENT, REFERER,
[INFO] [stdout]    |     ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 10 |     HeaderMap
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Deserialize`
[INFO] [stdout]   --> src/app.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use serde::Deserialize;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `service`, `to`
[INFO] [stdout]   --> src/app.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 | use actix_web::web::{service, to};
[INFO] [stdout]    |                      ^^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_http::error::PayloadError::Http2Payload`
[INFO] [stdout]   --> src/app.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use actix_http::error::PayloadError::Http2Payload;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_http::http::HeaderValue`
[INFO] [stdout]   --> src/app.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use actix_http::http::HeaderValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `lazy_static::lazy_static`
[INFO] [stdout]   --> src/app.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use lazy_static::lazy_static;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_http::cookie::Cookie`
[INFO] [stdout]   --> src/app.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use actix_http::cookie::Cookie;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::dev::RequestHead`
[INFO] [stdout]   --> src/app.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use actix_web::dev::RequestHead;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]   --> src/app.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::ops::Deref;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::error::UrlencodedError::ContentType`
[INFO] [stdout]   --> src/app.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | use actix_web::error::UrlencodedError::ContentType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64::CharacterSet::Crypt`
[INFO] [stdout]   --> src/app.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | use base64::CharacterSet::Crypt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Serializer`
[INFO] [stdout]     --> src/app.rs:3462:9
[INFO] [stdout]      |
[INFO] [stdout] 3462 |     use serde_json::Serializer;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `md5` should have an upper camel case name
[INFO] [stdout]   --> src/crypto.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     md5
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case: `Md5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `cbc` should have an upper camel case name
[INFO] [stdout]   --> src/crypto.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     cbc,
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Cbc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ecb` should have an upper camel case name
[INFO] [stdout]   --> src/crypto.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     ecb,
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case: `Ecb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64::CharacterSet::Crypt`
[INFO] [stdout]    --> src/crypto.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |     use base64::CharacterSet::Crypt;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `openssl::hash::DigestBytes`
[INFO] [stdout]    --> src/crypto.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |     use openssl::hash::DigestBytes;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::seq::index::IndexVec`
[INFO] [stdout]    --> src/crypto.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     use rand::seq::index::IndexVec;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `App`, `FromRequest`, `HttpRequest`, `HttpResponse`, `HttpServer`, `Responder`, `cookie`, `error`, `web`
[INFO] [stdout]  --> src/api.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     App, HttpRequest, FromRequest, HttpResponse,
[INFO] [stdout]   |     ^^^  ^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 3 |     HttpServer, Responder, web, error,
[INFO] [stdout]   |     ^^^^^^^^^^  ^^^^^^^^^  ^^^  ^^^^^
[INFO] [stdout] 4 |     cookie,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Uri`
[INFO] [stdout]  --> src/api.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use actix_web::http::{ Uri, };
[INFO] [stdout]   |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `COOKIE`, `HOST`, `ToStrError`
[INFO] [stdout]  --> src/api.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use reqwest::header::{HOST, CONTENT_TYPE, USER_AGENT, REFERER, HeaderMap, ToStrError, CONTENT_ENCODING, COOKIE};
[INFO] [stdout]   |                       ^^^^                                                ^^^^^^^^^^                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Client`
[INFO] [stdout]   --> src/api.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Client,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Deserialize`
[INFO] [stdout]   --> src/api.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use serde::Deserialize;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::error::UrlencodedError::ContentType`
[INFO] [stdout]   --> src/api.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use actix_web::error::UrlencodedError::ContentType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::crypto::HashType`
[INFO] [stdout]   --> src/api.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::crypto::HashType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64::CharacterSet::Crypt`
[INFO] [stdout]   --> src/api.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use base64::CharacterSet::Crypt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::rngs::OsRng`
[INFO] [stdout]   --> src/api.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use rand::rngs::OsRng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `QueryParams<'_>: From<Vec<(&str, &std::string::String)>>` is not satisfied
[INFO] [stdout]    --> src/crypto.rs:267:19
[INFO] [stdout]     |
[INFO] [stdout] 267 |         let res = QueryParams::from(vec![
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^ the trait `From<Vec<(&str, &std::string::String)>>` is not implemented for `QueryParams<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following implementations were found:
[INFO] [stdout]               <QueryParams<'a> as From<&'a std::string::String>>
[INFO] [stdout]               <QueryParams<'a> as From<&'a str>>
[INFO] [stdout]               <QueryParams<'a> as From<Vec<(&'a str, &'a str)>>>
[INFO] [stdout]     = note: required by `std::convert::From::from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `QueryParams<'_>` doesn't implement `std::fmt::Display`
[INFO] [stdout]    --> src/crypto.rs:271:28
[INFO] [stdout]     |
[INFO] [stdout] 271 |         println!("res={}", res);
[INFO] [stdout]     |                            ^^^ `QueryParams<'_>` cannot be formatted with the default formatter
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::fmt::Display` is not implemented for `QueryParams<'_>`
[INFO] [stdout]     = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]     = note: required by `std::fmt::Display::fmt`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 29 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustMusic`
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `Command { std: "docker" "inspect" "2c12f030da22ac719b7424468cd143094d5cfd347d97d546e044d0015e680813", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c12f030da22ac719b7424468cd143094d5cfd347d97d546e044d0015e680813", kill_on_drop: false }`
[INFO] [stdout] 2c12f030da22ac719b7424468cd143094d5cfd347d97d546e044d0015e680813
